Many computer processors support virtual memory, which is a mechanism that allows different programs to share physical memory. A memory manager assigns a virtual memory space to each program and each program operates with reference to its assigned virtual memory space. The memory manager controls translating memory addresses in the virtual memory space to memory addresses in the shared physical memory. One component used by the memory manager is a translation lookaside buffer, which caches memory address translations. Situations can arise in which at least a portion of the translation lookaside buffer is to be flushed. However, it can be difficult to determine whether the entire translation lookaside buffer is to be flushed or only particular entries of the translation lookaside buffer are to be flushed, which can result in reduced performance of the processor.